<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:p="http://primefaces.org/ui">
    <ui:composition template="comunLocales.xhtml">
        <ui:define name="body">
            <p:ajaxStatus style="width:75px;height:75px;position:fixed;right:100px;bottom:100px">  
                <f:facet name="start">  
                    <p:graphicImage value="http://#{initParam['DIRECCION_SERVIDOR']}/Iconos/loading.gif" />  
                </f:facet>  

                <f:facet name="complete">  
                    <h:outputText value="" />  
                </f:facet>  
            </p:ajaxStatus>
            <h:form id="formularioProductosCartalID">
                <p:growl id="mensajeProductos" showDetail="true" sticky="true"/>
                <p:remoteCommand  name="iniciarDatos"
                                  process="@this"
                                  update="formularioProductosCartalID"
                                  actionListener="#{ingresoProductosCartaControlador.iniciarDatos()}"/>
                <h:panelGrid id="panelIngresoProductosID" columns="2" cellspacing="5">
                    <h:outputText value="Producto"/>
                    <h:inputText value="#{ingresoProductosCartaDataManager.nuevoProducto.prNombre}"/>
                    <h:outputText value="Descripción"/>
                    <h:inputTextarea  cols="45" rows="5" 
                                      value="#{ingresoProductosCartaDataManager.nuevoProducto.prDescripcion}"
                                      validatorMessage="La descripcion debe poseer máximo 500 caracteres">
                        <f:validateLength maximum="500" />
                    </h:inputTextarea>
                    <h:outputText value="Precio"/>
                    <h:inputText value ="#{ingresoProductosCartaDataManager.nuevoProducto.prPrecio}"
                                 validatorMessage="El campo Precio debe ser un dato numérico"
                                 converterMessage="El campo Precio debe ser un dato numérico">
                        <f:validator binding="#{numeroValidador}" />
                    </h:inputText>
                    <h:outputLabel value="Puntos" />
                    <h:inputText size="5" value="#{ingresoProductosCartaDataManager.nuevoProducto.prPuntos}"
                                 validatorMessage="El campo Puntos debe ser un dato numérico"
                                 converterMessage="El campo Puntos debe ser un dato numérico">

                        <f:validator binding="#{numeroValidador}" />
                    </h:inputText>
                    <center><p:commandButton id="btnIngresarProductoID" value="Ingresar"
                                             action="#{ingresoProductosCartaControlador.crearProducto()}"
                                             update="formularioProductosCartalID"
                                             process="panelIngresoProductosID"/></center>
                </h:panelGrid>
                <center>
                    <p:dataTable value="#{ingresoProductosCartaDataManager.listaProductos}" 
                                 id="tablaProductosID"
                                 var="productosCarta" style="color: #CCCCCC"
                                 emptyMessage="No existen productos ingresados">
                        <p:column id="columnaImagenProductoID" headerText="Producto" style="color: #CCCCCC">
                            <center><p:graphicImage value="#{productosCarta.prImagen}" width="50" height="50"/></center>
                        </p:column>
                        <p:column id="columnaNombreProductoID" headerText="Producto" style="color: #CCCCCC">
                            <center><h:outputText value="#{productosCarta.prNombre}"/></center>
                        </p:column>
                        <p:column id="columnaPrecioProductoID" headerText="Precio" style="color: #CCCCCC">
                            <center><h:outputText value="$#{productosCarta.prPrecio}"/></center>
                        </p:column>
                        <p:column id="columnaDescripcionProductoID" headerText="Descripcion" style="color: #CCCCCC">
                            <center><h:outputText value="#{productosCarta.prDescripcion}"/></center>
                        </p:column>
                        <p:column id="columnaPuntosProductoID" headerText="Puntos" style="color: #CCCCCC">
                            <center><h:outputText value="#{productosCarta.prPuntos}"/></center>
                        </p:column>
                        <p:column id="columnaEstadoProductoID" headerText="Estado" style="color: #CCCCCC">
                            <center><h:outputText value="#{productosCarta.prEstado}"/></center>
                        </p:column>
                        <p:column id="columnaEditarProductoID" headerText="Editar" style="color: #CCCCCC">
                            <center>
                                <p:commandLink value="Editar" 
                                               process="@this"
                                               update=":formularioProductosCartalID:dialogEditarProductosID"
                                               oncomplete="dialogProducto.show();">
                                    <f:setPropertyActionListener target="#{ingresoProductosCartaDataManager.productos}" value="#{productosCarta}"/>
                                </p:commandLink>
                            </center>
                        </p:column>
                    </p:dataTable>
                </center>
                <ui:include src="/principal/administracion/modales.xhtml" />
            </h:form>
        </ui:define>
    </ui:composition>
</html>

